#!/bin/bash

# React Native 清理和重新构建脚本
# 用于应用性能优化后的完整重建

echo "🧹 开始清理缓存..."

# 清理 Metro bundler 缓存
echo "📦 清理 Metro bundler 缓存..."
npx react-native start --reset-cache &
METRO_PID=$!
sleep 3
kill $METRO_PID 2>/dev/null

# 清理 watchman
echo "👀 清理 Watchman..."
watchman watch-del-all 2>/dev/null || echo "⚠️  Watchman 未安装，跳过"

# 清理临时文件
echo "🗑️  清理临时文件..."
rm -rf $TMPDIR/react-* 2>/dev/null
rm -rf $TMPDIR/metro-* 2>/dev/null
rm -rf $TMPDIR/haste-* 2>/dev/null

# 清理 Android 构建
echo "🤖 清理 Android 构建..."
cd android
./gradlew clean
cd ..

# 清理 iOS 构建
echo "🍎 清理 iOS 构建..."
cd ios
rm -rf build
rm -rf Pods
rm -rf Podfile.lock
cd ..

# 重新安装依赖
echo "📥 重新安装依赖..."
yarn install

# 重新安装 iOS Pods
echo "🍎 重新安装 iOS Pods..."
cd ios
pod install
cd ..

echo ""
echo "✅ 清理完成！"
echo ""
echo "现在可以运行以下命令启动应用："
echo ""
echo "  iOS:     npm run ios"
echo "  Android: npm run android"
echo ""
echo "或者构建 Release 版本："
echo ""
echo "  iOS:     npm run build:ios"
echo "  Android: npm run build:android"
echo ""
